[日本語Alexa] Auth0にアカウントリンクしてみました
1 はじめに
CX事業本部の平内(SIN)です。
Alexaで、特定の権限でスキルを動作させるための基本的な仕組みは、アカウントリンクです。 以下は、今まで、各種のアカウントリンクを試した記事です。
[日本語Alexa] Cognito User Pool によるアカウントリンク
[日本語Alexa] APIGatewayをプロキシーとして設定し、アカウントリンクをデバッグする
[Alexa] LINEログインでAccount Linkingしてみた
[Alexa] Login with Amazon との Account Linking で名前を呼びかける挨拶とかメールを送信するスキルを作ってみました
[Alexa] Account Linking を使用してスキルからFacebookに投稿してみました
[日本語Alexa] Salesforceにアカウントリンクしてみました | DevelopersIO
[日本語Alexa] Cognitoによるアカウントリンクを独自ドメインで設定してみました
今回は、Auth0でのアカウントを試してみましたので、このシリーズの追加です。
作業の手順は、概ね以下のとおりです。
- Applicationの作成(Auth0)
- Applicationの設定(Auth0)
- アカウントリンクの設定(Alexa)
2 Applicationの作成(Auth0)
Auth0のコンソールで、ApplicationsからCREATE APPLICATIONを選択します。
適当な名前をつけ、Machine to Machine Applications を選択して CREATE をクリックします。
authorization APIでは、Auth0 Management APIを選択し、必要なスコープにチェックして、AUTHORIZEをクリックします。
3 Applicationの設定(Auth0)
Applicationが作成されたら、Settingsタブで、以下の設定を確認します。(Alexaのアカウントリンクの設定で使用するため)
- Domain
- Clinet ID
- Client Secret
また、同じくSettingsサブで下の方にスクロールし、Token Endpoint Authentication MethodでBasicを選択、コールバックURL(※Alexaのアカウントリンクの設定ページに記載されているもの)を設定します。
4 アカウントリンクの設定(Alexa)
Alexaスキルのアカウントリンクの設定は以下のとおりです。
- Authorization Crant種別: Auth Code Grant
- 認証画面のURL: https://{Auth0アプリのDomain}/authorize
- アクセストークンのURL: https://{Auth0アプリのDomain}/oauth/token
- ユーザーのクラインアントURL: Auth0アプリのClinet ID
- ユーザーのシークレット: Auth0アプリのClient Secret
- ユーザーの認証スキーム: HTTP Basic認証
- スコープ: openid(必要なものを全て設定する)
5 ログイン
スキルを有効にすると、アカウントリンクのため、Auth0の認証画面が表示されます。
アカウントリンクに成功すると、success linkdが表示されます。
6 最後に
今回は、アカウントリンク・シリーズへの追加として、Auth0へのアカウントリンクを試してみました。
ちなみに、Auth0は、あらゆるアプリ、APIに柔軟に対応可能な次世代型の認証基盤サービスという事で、弊社でも、製品パートナーとなっています。
あらゆる環境に対応可能な次世代認証基盤サービス「Auth0」